type is a keyword used to create a type alias. Which is a name given to a type expression. They support primitives, objects, arrays, tuples, unions, intersections and conditional types.
Why type exists ?
Since typescript have classes. interface was needed. But since classes are objects, the interfaces would even work for other objects. If add more powers to interface it will become too flexible and might not make sense to be used with classes. So, instead create type. This will create a literal type alias. Like a variable name. type SomeTypeName ...//type expression. Here the SomeTypeName is an alias which holds the type expression.